 /**
 * @(#) StartupCommand.as
 *
 * @date		2009. 02. 17.
 * @version		1.0
 * @author		Shin, Yunwoo
 * @description	Application 시작을 처리하는 Command
 *
 */
package com.skt.common_hr.medicalmoney.controller
{
	import com.skt.common_hr.medicalmoney.model.AccountProxy;
	import com.skt.common_hr.medicalmoney.model.ApprovalProxy;
	import com.skt.common_hr.medicalmoney.model.MedicalMoneyApprovalProxy;
	import com.skt.common_hr.medicalmoney.model.CelebrationCodeProxy;
	import com.skt.common_hr.medicalmoney.model.MedicalMoneyProxy;
	import com.skt.common_hr.medicalmoney.model.CongMoneyAccountProxy;
	import com.skt.common_hr.medicalmoney.model.ReqMedicalMoneyWriteProxy;
	import com.skt.common_hr.medicalmoney.model.FamilyProxy;
	import com.skt.common_hr.medicalmoney.model.MemberSearchListProxy;
	import com.skt.common_hr.medicalmoney.model.StatementUrlProxy;
	import com.skt.common_hr.medicalmoney.model.SupportStandardProxy;
	import com.skt.common_hr.medicalmoney.view.MedicalMoneyMediator;
	
	import org.puremvc.as3.multicore.interfaces.ICommand;
	import org.puremvc.as3.multicore.interfaces.INotification;
	import org.puremvc.as3.multicore.patterns.command.SimpleCommand;

	public class StartupCommand extends SimpleCommand implements ICommand
	{

		override public function execute(note:INotification):void
		{
			var app:MedicalMoney = note.getBody() as MedicalMoney;
			trace("execute startupCommand in MedicalMoney Module");

			facade.registerProxy(new MedicalMoneyProxy());
			facade.registerProxy(new ReqMedicalMoneyWriteProxy());
			facade.registerProxy(new CongMoneyAccountProxy());
			facade.registerProxy(new MemberSearchListProxy());
			facade.registerProxy(new FamilyProxy());
			facade.registerProxy(new ApprovalProxy());
			facade.registerProxy(new CelebrationCodeProxy());
			facade.registerProxy(new AccountProxy());
			facade.registerProxy(new SupportStandardProxy());

			facade.registerProxy(new StatementUrlProxy());

			facade.registerProxy(new MedicalMoneyApprovalProxy());


			// MVC 모델중 View와 관련한 mediator들을 등록한다.
			facade.registerMediator(new MedicalMoneyMediator(app.view));
		}
	}
}